<?php
/**
 * класс предназначен для работы с городами, которые фигурируют в URL
 * @author Дмитрий Кузьма <kouzma.d@gmail.com>
 * @version 1.1
 */
class CityUrl {

	/**
	 * Получает название города в нужном падеже
	 * 
	 * @param string $city
	 * @param string $case
	 */
	/*
	public function getCityName($city, $case = 'ime') {
		$cityName = self::$arrCities[$city];
		// Получаем последний символ города
		if ($case != 'ime') {
			$cityStrLength = Service_Function::utf8_strlen($cityName);
			$lastLetter = Service_Function::utf8_substr($cityName, $cityStrLength - 1);
			$cityStrWithoutLetter = Service_Function::utf8_substr($cityName, 0, $cityStrLength - 1);
  	}
		switch ($case) {
			case 'rod':
				if ($city == 'nij_novgorod') return 'Нижнего Новгорода';
				if ($city == 'rostov') return 'Ростова-на-Дону';
				switch ($lastLetter) {
					case 'а':
						return $cityStrWithoutLetter . 'ы';
					case 'г':
						return $cityName . 'а';
					default: return $cityName;
				}
			case 'ime': default:
				return $cityName;
		}
	}
	*/
	
	/**
	 * Получает список первичных ключей для городов
	 *
	 * @return array
	 */
	public function getCityPks() {
		Service_Debug::setDebug();
		$objDB = Service_Database::instance();//Получаем подключение к БД
		$stmt = "SELECT `city_url`.`city` FROM `city_url`";
		return $objDB->selectSimpleArray($stmt);
	}
	
	/**
	 * Получаем список городов ключ => название
	 * 
	 */
	public function getCitiesAsKeyName() {
		Service_Debug::setDebug();
		$objDB = Service_Database::instance();//Получаем подключение к БД
		$stmt = "SELECT `city_url`.`city`, `city_url`.`city_name` FROM `city_url`";
		$arrCities = $objDB->select($stmt);
		return Service_ArrayConverter::makeKeyValueArrayFromMultyArray($arrCities, 'city', 'city_name');
		
	}
	
	/**
	 * Получает список городов для поля типа Select
	 * 
	 */
	public function getCitiesForSelectField() {
		Service_Debug::setDebug();
		$objDB = Service_Database::instance();//Получаем подключение к БД
		$stmt = "SELECT `city_url`.`city`, `city_url`.`city_name` FROM `city_url` ORDER BY `city_url`.`city_name` ASC";
		return $objDB->select($stmt);
	}
	
	/**
	 * Получает список городов со странами
	 * 
	 */
	public function getCitiesWithCountries() {
		Service_Debug::setDebug();
		$objDB = Service_Database::instance();//Получаем подключение к БД
		$stmt = "SELECT `city_url`.*, `country`.`country_name`
		FROM `city_url`
		LEFT JOIN `country` ON `country`.`country` = `city_url`.`country`
		ORDER BY `country`.`sort_num` ASC, `city_url`.`city_name` ASC";
		return $objDB->select($stmt);
	}
	
}
?>